The present invention is encompassed within the field of information stream coding in secure communications. Specifically, it is encompassed within the field of methods based on hyper-chaotic systems some of which are known in the state of the art.
In a simple case of communication where a message is sent from a transmitter A to a receiver B, the message is coded by a method such that A and B can code and decode respectively.
The coded information is called a cipher or an encrypted, message and is sent through the communication channel. The message is formed by a bitstream of any length, and A and B generate a binary sequence for coding and decoding, respectively. These binary sequences are the encryption sequences.
If the message from A is encrypted by performing a binary XOR operation, the table of which is shown in Table 1, with an encryption sequence for A, the original message is recovered in B if the encryption sequence applied in A is the same as the encryption sequence applied in B.
TABLE 1XOR tableOriginalEncryptionEncryptedmessagesequencemessage(M)(S)(M XOR S)000011101110
The invention is based on the contributions published in the thesis by the same author “Vidal, G. Sinczonlzación y control de sistemas dinámicos en régimen de caos espacio-temporal (Synchronization and control, of dynamical systems in space-time chaos) (PhD Thesis, University of Navarra, Spain, 2010)” detailing the method for obtaining random sequences based on hyperchaotic systems and the sequences being generated from a dynamical system.
A dynamical system is a system the state of which evolves over-time. The behavior in said state can be modeled by determining the behavior equations of the system after identifying the elements involved and their relations. A dynamical system modeled by means of a differential equation or a system of differential equations allows describing it in terms of its behavior through solving said equation or system of equations. Particularly, it is possible to express a differential equation of a first order initial value problem in the form of x′(t)=f(t, x(t)) wherein x(t) is the solution of the system, as a function of time t, and wherein the initial conditions are x(t0)=x0. If instead of an ordinary differential equation the system requires the use of more variables, then x is a vector variable belonging to the Rn space, n being the dimension of the system of equations and wherein each component of the vector x is a variable as a function of time.
Chaotic cryptography is based on the use of chaos theory on secure communications systems. Chaos theory studies deterministic systems with high response sensitivity to a small change in the initial conditions.
Systems A and B are synchronized when the coding starts. This means that the same random sequence is being generated in both to enable coding and decoding the message using the XOR operator at both ends of the communication. If this synchronization does not occur, the decoded message will not be the originally coded message.
The method described in the aforementioned thesis document proposes a method for generating random sequences wherein both systems A and B solve respective systems of differential equations. The objective is to search for an encryption complying with the theoretical approach by C. E. Shannon “Shannon, C. E. [1949]“Communication Theory of Secrecy Systems” Bell System Technical Journal 28, pp. 656-715” stating that a condition necessary and sufficient so that a message complies with “perfect secrecy” is that the encryption does not probabilistically depend on the message, therefore a probabilistic approach cannot be used to discover properties of the message. Another important conclusion made by Shannon is that if the length of the key is not an inconvenience, the Vernam cipher is the most suitable. A Vernam cipher has 3 fundamental features:                1. The key, in this case the encryption sequence, must be as long as the message to be encrypted,        2. Once the key has been used, it cannot be used again. For this reason the Vernam cipher is also called a “one-time pad”.        3. The key is made up of a list of random uniformly distributed symbols.        
The first property requires the key to be long enough. Theoretically when using a chaotic dynamical system, the trajectories can be as long as necessary without ever becoming periodic. It is not possible to have a sequence of infinite length in a computer, but it can be implemented with sufficient precision to integrate time periods without the rounding errors affecting the method and that these time periods are long enough as required by the cases to be dealt with.
The second property can be easily achieved by software, prohibiting the repetition of values of initial conditions.
A particular case of an encryption and decryption technique described in the thesis document establishes two coupled systems of differential equations associated with an initial value problem. These systems of equations, one used for generating the encryption key and the other for generating the decryption key, are such that even though they start from different initial conditions, they end up evolving according to the same solution after being integrated for a determined time period due to the coupled terms.
There are two options for carrying out the coupling assuring communication end authenticity: either the values of the coupling parameters of the dynamical system are public, and there is a third entity to enable authenticating the message receiver, or the values of the dynamical parameters are exchanged through a secure channel, such as for example by using RSA (Rivest, Shamir and Adleman) keys or Diffie-Hellman keys.
The second property can also be achieved by software, prohibiting the repetition of coupling factors.
In most of the known cases of the state of the art, these two properties involve passing massive keys through the communication channels and the cost is too high. However, in the example described in the thesis document only one set of parameters is transmitted. These parameters provide access to a set of keys which are as many as the “digital” points found, in the phase space, where the trajectories are enclosed. However, to know the specific key it is necessary to carry out the synchronization process between systems A and B; i.e., it is necessary to integrate both systems long enough in order to consider that the solution obtained in both systems as a function of time is the same or the difference thereof is below a very small threshold value or a value known as a “machine error” if work is done with a computer.
The third property requires random signals; however, the starting point is a deterministic system. The dynamical properties of the system and a signal whitening process are used to perform this process. One of the main problems of continuous deterministic signals, even hyperchaotic signals, is how easy they can be tracked. This means that a spy could more or less correctly estimate the next values of the signal by knowing the previous instants. Therefore the possible spy could limit the possible initial conditions until finally discovering the key. A whitening process is used to prevent such attack. The thesis document describes a whitening process which allows transforming the continuous signal into a binary signal. To start, highly uncorrelated continuous signals are required, minimizing the statistical information of the encrypted message.
The thesis document describes a method which is based on the fact that hyperchaotic systems have continuous signals the temporal autocorrelation of which is quickly lost. On the other hand, it is also desirable that the sequence generating system is a high-dimensional system, therefore it is more difficult for periodic orbits to appear in the solution of the solved system of equations, a typical problem when working with computerized chaos. If there is periodicity in the solution to the system of equations, the work of the spy is being helped since he/she would have a temporal reference to measure the statistics of the system.
Another requirement that the method for coding must comply with is to assure that there is no bijective function between the encrypted message and the original message, or what is known in cryptography as the inverse function problem. To that end the signal whitening method is used, eliminating most of the phase and amplitude information. Therefore the function linking the message and the cipher will no longer be bijective, and therefore one and the same encrypted bitstream can have different meanings. However, since the two systems are synchronized they will always have the same unencrypted message.
The main technical problem of the signal whitening method proposed by the thesis document is the high computational cost involved in addition to the fact that a completely uncorrelated pseudorandom sequence is not generated.